//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//

package ciicos.point.model.pointsync;

import ciicos.base.Pagination;
import ciicos.point.result.ScadaNode;
import ciicos.util.generater.DataSwapUtil;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.util.List;

public class PointSyncPagination extends Pagination {
    private String selectKey;
    private String json;
    private String dataType;
    private String superQueryJson;
    @JsonProperty("node")
    private String node;
    @JsonProperty("code")
    private String code;
    @JsonProperty("name")
    private String name;
    @JsonProperty("type")
    private List<String> type;
    @JsonProperty("desc")
    private String desc;
    @JsonProperty("nodes")
    private List<ScadaNode> nodes;
    private String menuId;
    private String moduleId;

    public void setType(Object type) {
        this.type = DataSwapUtil.convertToList(type);
    }

    public String getSelectKey() {
        return this.selectKey;
    }

    public String getJson() {
        return this.json;
    }

    public String getDataType() {
        return this.dataType;
    }

    public String getSuperQueryJson() {
        return this.superQueryJson;
    }

    public String getNode() {
        return this.node;
    }

    public String getCode() {
        return this.code;
    }

    public String getName() {
        return this.name;
    }

    public List<String> getType() {
        return this.type;
    }

    public String getDesc() {
        return this.desc;
    }

    public List<ScadaNode> getNodes() {
        return this.nodes;
    }

    public String getMenuId() {
        return this.menuId;
    }

    public String getModuleId() {
        return this.moduleId;
    }

    public void setSelectKey(String selectKey) {
        this.selectKey = selectKey;
    }

    public void setJson(String json) {
        this.json = json;
    }

    public void setDataType(String dataType) {
        this.dataType = dataType;
    }

    public void setSuperQueryJson(String superQueryJson) {
        this.superQueryJson = superQueryJson;
    }

    @JsonProperty("node")
    public void setNode(String node) {
        this.node = node;
    }

    @JsonProperty("code")
    public void setCode(String code) {
        this.code = code;
    }

    @JsonProperty("name")
    public void setName(String name) {
        this.name = name;
    }

    @JsonProperty("desc")
    public void setDesc(String desc) {
        this.desc = desc;
    }

    @JsonProperty("nodes")
    public void setNodes(List<ScadaNode> nodes) {
        this.nodes = nodes;
    }

    public void setMenuId(String menuId) {
        this.menuId = menuId;
    }

    public void setModuleId(String moduleId) {
        this.moduleId = moduleId;
    }

    public boolean equals(Object o) {
        if (o == this) {
            return true;
        } else if (!(o instanceof PointSyncPagination)) {
            return false;
        } else {
            PointSyncPagination other = (PointSyncPagination)o;
            if (!other.canEqual(this)) {
                return false;
            } else {
                Object this$selectKey = this.getSelectKey();
                Object other$selectKey = other.getSelectKey();
                if (this$selectKey == null) {
                    if (other$selectKey != null) {
                        return false;
                    }
                } else if (!this$selectKey.equals(other$selectKey)) {
                    return false;
                }

                Object this$json = this.getJson();
                Object other$json = other.getJson();
                if (this$json == null) {
                    if (other$json != null) {
                        return false;
                    }
                } else if (!this$json.equals(other$json)) {
                    return false;
                }

                Object this$dataType = this.getDataType();
                Object other$dataType = other.getDataType();
                if (this$dataType == null) {
                    if (other$dataType != null) {
                        return false;
                    }
                } else if (!this$dataType.equals(other$dataType)) {
                    return false;
                }

                Object this$superQueryJson = this.getSuperQueryJson();
                Object other$superQueryJson = other.getSuperQueryJson();
                if (this$superQueryJson == null) {
                    if (other$superQueryJson != null) {
                        return false;
                    }
                } else if (!this$superQueryJson.equals(other$superQueryJson)) {
                    return false;
                }

                Object this$node = this.getNode();
                Object other$node = other.getNode();
                if (this$node == null) {
                    if (other$node != null) {
                        return false;
                    }
                } else if (!this$node.equals(other$node)) {
                    return false;
                }

                Object this$code = this.getCode();
                Object other$code = other.getCode();
                if (this$code == null) {
                    if (other$code != null) {
                        return false;
                    }
                } else if (!this$code.equals(other$code)) {
                    return false;
                }

                Object this$name = this.getName();
                Object other$name = other.getName();
                if (this$name == null) {
                    if (other$name != null) {
                        return false;
                    }
                } else if (!this$name.equals(other$name)) {
                    return false;
                }

                Object this$type = this.getType();
                Object other$type = other.getType();
                if (this$type == null) {
                    if (other$type != null) {
                        return false;
                    }
                } else if (!this$type.equals(other$type)) {
                    return false;
                }

                Object this$desc = this.getDesc();
                Object other$desc = other.getDesc();
                if (this$desc == null) {
                    if (other$desc != null) {
                        return false;
                    }
                } else if (!this$desc.equals(other$desc)) {
                    return false;
                }

                Object this$nodes = this.getNodes();
                Object other$nodes = other.getNodes();
                if (this$nodes == null) {
                    if (other$nodes != null) {
                        return false;
                    }
                } else if (!this$nodes.equals(other$nodes)) {
                    return false;
                }

                Object this$menuId = this.getMenuId();
                Object other$menuId = other.getMenuId();
                if (this$menuId == null) {
                    if (other$menuId != null) {
                        return false;
                    }
                } else if (!this$menuId.equals(other$menuId)) {
                    return false;
                }

                Object this$moduleId = this.getModuleId();
                Object other$moduleId = other.getModuleId();
                if (this$moduleId == null) {
                    if (other$moduleId != null) {
                        return false;
                    }
                } else if (!this$moduleId.equals(other$moduleId)) {
                    return false;
                }

                return true;
            }
        }
    }

    protected boolean canEqual(Object other) {
        return other instanceof PointSyncPagination;
    }

    public int hashCode() {
        int PRIME = 59;
        int result = 1;
        Object $selectKey = this.getSelectKey();
        result = result * 59 + ($selectKey == null ? 43 : $selectKey.hashCode());
        Object $json = this.getJson();
        result = result * 59 + ($json == null ? 43 : $json.hashCode());
        Object $dataType = this.getDataType();
        result = result * 59 + ($dataType == null ? 43 : $dataType.hashCode());
        Object $superQueryJson = this.getSuperQueryJson();
        result = result * 59 + ($superQueryJson == null ? 43 : $superQueryJson.hashCode());
        Object $node = this.getNode();
        result = result * 59 + ($node == null ? 43 : $node.hashCode());
        Object $code = this.getCode();
        result = result * 59 + ($code == null ? 43 : $code.hashCode());
        Object $name = this.getName();
        result = result * 59 + ($name == null ? 43 : $name.hashCode());
        Object $type = this.getType();
        result = result * 59 + ($type == null ? 43 : $type.hashCode());
        Object $desc = this.getDesc();
        result = result * 59 + ($desc == null ? 43 : $desc.hashCode());
        Object $nodes = this.getNodes();
        result = result * 59 + ($nodes == null ? 43 : $nodes.hashCode());
        Object $menuId = this.getMenuId();
        result = result * 59 + ($menuId == null ? 43 : $menuId.hashCode());
        Object $moduleId = this.getModuleId();
        result = result * 59 + ($moduleId == null ? 43 : $moduleId.hashCode());
        return result;
    }

    public String toString() {
        return "PointSyncPagination(selectKey=" + this.getSelectKey() + ", json=" + this.getJson() + ", dataType=" + this.getDataType() + ", superQueryJson=" + this.getSuperQueryJson() + ", node=" + this.getNode() + ", code=" + this.getCode() + ", name=" + this.getName() + ", type=" + this.getType() + ", desc=" + this.getDesc() + ", nodes=" + this.getNodes() + ", menuId=" + this.getMenuId() + ", moduleId=" + this.getModuleId() + ")";
    }
}
